perm filename TAILS.F4[P11,LCS] blob sn#583802 filedate 1981-05-05 generic text, type T, neo UTF8
	SUBROUTINE ACCI
	END
C**** TAILS.F4, DOTIT ********
	SUBROUTINE TAILS
	COMMON /INTGRS/JACC,JTAIL,JDOT,NTYPE,JSTEM,JWHOLE
	COMMON R2,JA,CENTR,J2,RJQ(20),JQ(20) /STF/RSTFAC(0/7),RSTJ2
	COMMON/ALF/INP(46),RST7,RST3,RSTX,RMINI,RINV,RA,RX,RJX,RJY,
	1 RB,RJW,RZ,JX,RG,KL,RJAC,K,L,RQ,RH,RZTM,RXX,JJJ,PUNCT,JY,RJ
	EQUIVALENCE (R4,RJQ(2)),(R8,RJQ(6)),(J10,JQ(8))
	RJW=2.*RMINI/RSTJ2
	RA=1.
C   FOR VERT. SPACING OF MULTIPLE TAILS
	IF(JSTEM.NE.2)GO TO 1127
	R4=R4-3.7-R8
C  R4 IS USED IN SUBR. TAIL   - R8 IS STEM EXTENSION.
	RJW=-RJW
	GO TO 127

1127	R4=R4-2+R8
	RA=-RA
	R8=0
127	CALL TAIL
	JTAIL=JTAIL-1
	IF(JTAIL.EQ.0)GO TO 1
	R4=R4+RJW
	 GO TO 127 

1	IF(J10.GE.0)RETURN
C RJX,RZ MUST BE SAVED PROPERLY AFTER USE IN 'STEM'
	RJY=-19.
	RH=-RSTJ2*4.
	IF(JSTEM.EQ.1)GO TO 1327
C	IF(RA.LT.0)GO TO 1327
C   NEXT IS FOR STEM DOWN SLASH
	RJY=23.
	RH=RST7

1327	RJX=RJX-RST7
	RJY=RZ+RJY*RSTJ2
	RZ=RZ+RH
	CALL LINX(RJX,RJY,RJX+17.*RSTJ2,RZ)
C FOR SLASH ON GRACE NOTE TAIL
	END


	SUBROUTINE DOTIT
	COMMON /INTGRS/JACC,JTAIL,JDOT,NTYPE,JSTEM,JWHOLE
	1 /DAT/RAC(69),RDOT(17) /STF/RSF(8),RSTJ2 /WIDTH/WID1,WID2,WIDX
	COMMON R2,JA,CENTR,J2,RJQ(20),JQ(20) /PLTR/IPLT,RHT,DIS
	COMMON/ALF/INP(46),RST7,RST3,RSTX,RMINI,RINV,RA,RX,RJX,RJY,
	1 RB,RJW,RZ,JX,RG,KL,RJAC,K,L,RQ,RH,RZTM,RXX,JJJ,PUNCT,JY,RJ
	EQUIVALENCE (J4,JQ(2)),(J7,JQ(5)),(R3,RJQ(1)),(R7,RJQ(5))

      RJX=RJAC+(22.+AMOD(R7,1.0)*59.6)*RMINI
C RJAC IS ORIGINAL R3
C NEXT FOR NOTES DISPLACED TO LEFT OR RIGHT OF STEM
C  MOVES DOT TO RIGHT (THIS SHOULD BE WIDX - BUT OLD FILES WOULD BE WRONG.)
C**** USE WIDX IN FRANCE?
	IF(JWHOLE.EQ.20)GO TO 2
     	IF(JWHOLE.EQ.10.OR.J7.GT.100)RJX=RJX+WID1

2     RJY=CENTR+RSTJ2
      IF(MOD(J4,2).EQ.0)GO TO 108
C ON A LINE OR A SPACE?
      RX=RST7
      IF(J7.GT.100)RX=-RX
C  ADD 100 TO R7 FOR DOTS BELOW! NOTE
CC    IF(JWHOLE.GE.20.OR.J7.GT.100)RX=-RX
C PERHAPS SHOULD ALWAYS PUT DOT DOWN IF NOTE IS TO LEFT OF STEM??
      RJY=RJY+RX

108      RG=9.
	IF(IPLT.LT.0)RG=17.
C  DOESN'T FILL DOT ON DPY
	IF(JDOT.GT.10)JDOT=MOD(JDOT,10)

107   CALL RDRAW(1,RG,RDOT,RMINI,RJX,RJY,RMINI)
	JDOT=JDOT-1
	IF(JDOT.EQ.0)RETURN
	RJX=RJX+RSTJ2*10.
	GO TO 107
	END